%pylab inline
import matplotlib.pyplot as plt
from ipywidgets import * # az interaktivitásért felelős csomag
# Az abra kimentesehez az alabbiakat a plt.show() ele kell tenni!!!
#savefig('fig_rainbow_p2_1ray.pdf'); # Abra kimentese
#savefig('fig_rainbow_p2_1ray.eps'); # Abra kimentese
# Abra es fontmeretek
xfig_meret= 6 # 12 nagy abrahoz
yfig_meret= 6 # 12 nagy abrahoz
xyticks_meret= 15 # 20 nagy abrahoz
xylabel_meret= 15 # 30 nagy abrahoz
legend_meret= 21 # 30 nagy abrahoz
y=1
x=-1
arctan2(y,x)*180/pi
def rajz_vortex(q,fi0,xysize,Np):
fi0fok = 180/pi*fi0
#mintavételezési pontok legyártása
x,y = meshgrid(linspace(xysize,-xysize,Np),linspace(xysize,-xysize,Np))
u = cos(fi0+q*arctan2(y,x))
v = sin(fi0+q*arctan2(y,x))
figsize(xfig_meret,xfig_meret)
#plot(x, y, marker='.', color='k', linestyle='none')
quiver(x,y,u,v);
cim = "q =" + str(q) + ", fi0 = "+ str(fi0fok)
title(cim,fontsize=xylabel_meret);
def rajz_vortex_dipol(q,fi0,d,xysize,Np):
fi0fok = 180/pi*fi0
#mintavételezési pontok legyártása
x,y = meshgrid(linspace(xysize,-xysize,Np),linspace(xysize,-xysize,Np))
u = cos(fi0-q*arctan2(y,x-d/2) + q*arctan2(y,x+d/2))
v = sin(fi0-q*arctan2(y,x-d/2) + q*arctan2(y,x+d/2))
#figsize(xfig_meret,xfig_meret)
quiver(x,y,u,v);
cim = "dipol, q =" + str(q) + ", fi0 = "+ str(fi0fok) + ", x1=" +str(-d/2) +\
", x2=" +str(d/2)
title(cim,fontsize=xylabel_meret);
return(u,v)
q = 1
fi0 = 0*pi/2;
fi0fok = 180/pi*fi0
xysize=8;
Np =10;
rajz_vortex(q,fi0,xysize,Np);
q = 1
fi0 = 0;
fi0fok = 180/pi*fi0
xysize=8;
Np = 10;
xfig=8
figsize(3*xfig_meret,xfig_meret)
subplot(1,3,1)
rajz_vortex(q,fi0,xysize,Np);
fi0 = pi/2;
fi0fok = 180/pi*fi0
subplot(1,3,2)
rajz_vortex(q,fi0,xysize,Np);
fi0 = pi;
fi0fok = 180/pi*fi0
subplot(1,3,3)
rajz_vortex(q,fi0,xysize,Np);
q = -1
fi0 = 0;
fi0fok = 180/pi*fi0
xysize=1;
Np = 10;
figsize(3*xfig_meret,xfig_meret)
subplot(1,3,1)
rajz_vortex(q,fi0,xysize,Np);
fi0 = pi/2;
fi0fok = 180/pi*fi0
subplot(1,3,2)
rajz_vortex(q,fi0,xysize,Np);
fi0 = pi;
fi0fok = 180/pi*fi0
subplot(1,3,3)
rajz_vortex(q,fi0,xysize,Np);
q = -2
fi0 = 0;
fi0fok = 180/pi*fi0
xysize=1;
Np = 15;
figsize(3*xfig_meret,xfig_meret)
subplot(1,3,1)
rajz_vortex(q,fi0,xysize,Np);
fi0 = pi/2;
fi0fok = 180/pi*fi0
subplot(1,3,2)
rajz_vortex(q,fi0,xysize,Np);
fi0 = pi;
fi0fok = 180/pi*fi0
subplot(1,3,3)
rajz_vortex(q,fi0,xysize,Np);
interact(rajz_vortex,
q=IntSlider(min=-6.,max=6,step=1,value=1,description='q = '),
Np=IntSlider(min=10.,max=100,step=10,value=15,description='Np = '),
xysize=FloatSlider(min=4.,max=20,step=1,value=7,description='xysize = '),
fi0 =FloatSlider(min=-pi,max=pi,step=2*pi/8,value=pi/2,description='fi0 = '));
meret = 6;
Np = 15;
q = 1
fi0 = pi/2;
fi0fok = 180/pi*fi0
d=6
figsize(16,8)
subplot(1,2,1)
rajz_vortex_dipol(q,fi0,d,meret,Np);
fi0 = 0*pi/2;
fi0fok = 180/pi*fi0
subplot(1,2,2)
rajz_vortex_dipol(q,fi0,d,meret,Np);
meret = 6;
Np = 20;
q = 2
fi0 = 1*pi/2;
fi0fok = 180/pi*fi0
d=4
figsize(8,8)
rajz_vortex_dipol(q,fi0,d,meret,Np);
meret = 6;
Np = 15;
q = 2
fi0 = pi/2;
fi0fok = 180/pi*fi0
d=4
figsize(16,8)
subplot(1,2,1)
rajz_vortex_dipol(q,fi0,d,meret,Np);
fi0 = 0*pi/2;
fi0fok = 180/pi*fi0
subplot(1,2,2)
rajz_vortex_dipol(q,fi0,d,meret,Np);